Integrando o Apache com o TOMCAT para que as páginas estáticas sejam executadas pelo Apache e as em JSP pelo contêiner TOMCAT, além do direcionamento das aplicações via APACHE, sendo o WebServer de acesso para as aplicações que estão no TOMCAT.
Consideremos que estamos usando a versão 0.98e do OPENSSL, que está em um diretório de instalação de nosso servidor, vamos descompactar e instalar o mesmo:
# tar -xvf openssl-0.9.8e.tar.tar
# cd openssl-0.9.8e
# ./configure --prefix=/usr/local/ssl
# make
# make install
Consideremos que estamos usando a versão 2.2.6 do APACHE, que está em um diretório de instalação de nosso servidor, vamos descompactar e instalar o mesmo:
# tar -xvf httpd-2.2.6.tar.gz
# cd httpd-2.2.6
# ./configure --prefix=/usr/local/apache2 --enable-ssl=/usr/local/ssl
# make
# make install
# /usr/local/apache2/bin/apachectl start
Pronto, o Apache está instalado com suporte a SSL no diretório padrão que definimos: /usr/local/apache2.
Consideremos que estamos usando a versão 6.0.14 do TOMCAT, que está em um diretório de instalação que iremos usar ele, pois o TOMCAT só precisamos descompactar e não compilar, como os demais.
Usei como padrão o diretório /usr/local para instalação do TOMCAT, por convenção, deixo o nome do diretório com a versão e crio um LINK para ele com o nome "apache-tomcat", o que me permite mudar de versão sem ter que alterar demais arquivos de configurações do mesmo ou de terceiros.
# cd /usr/local
# tar -xvf apache-tomcat-6.0.14.tar.gz
# ln -s apache-tomcat apache-tomcat-6.0.14/
# vi /etc/profile
Adicionar as seguintes linhas no final do arquivo:
Agora iremos instalar o JAVA, baixe a última versão do BIN JDK no site da SUN e coloque do diretório que iremos instalar ele, no caso /usr/local. Como ele será instalado com o "nome-versão", também iremos criar um LINK com o nome JAVA apontando para ele, o que também nos permite trocar de versão sem maiores problemas.
# chmod +x jdk-1_5_0_12-linux-i586.bin
# ./ jdk-1_5_0_12-linux-i586.bin
(seguir orientações da instalação - padrão, só YES e ENTER)
# ln -s java jdk1.5.0_12/
# vi /etc/profile
Adicionar as seguintes linhas no final do arquivo:
[1] Comentário enviado por hugoeustaquio em 16/10/2007 - 08:54h
Parabéns, muito esclarecedor. Fica somente uma dica para os próximos leitores, usem o programa 'checkinstall' ao invéz de usar o comando 'make install', para gerar pacotes para a sua distribuição, assim fica mais fácil desinstalar depois, ou reinstalar caso você precise. Também é legal usar umas dicas para otimizar a compilação para o seu processador, caso você não tenha interesse em distribuir esses pacotes para outras pessoas. Você pode aprender a usar o checkinstall aqui: http://www.vivaolinux.com.br/dicas/verDica.php?codigo=8466
e pode otimizar a sua compilação inserindo as seguintes linhas no arquivo /etc/profile :
CFLAGS="-O2 -march=AtlonXP -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
export CFLAGS CHOST CXXFLAGS MAKEOPTS
Note que você terá que substituir o 'AtlonXP' pelo identificador do seu processador, que poderá ser k6, k7, k8 (modelos da AMD) ou PentiumIII, PentiumIV, pentium-mmx para modelos da intel. Para saber informações sobre o seu processador leia o arquivo /proc/cpuinfo. Mais uma vez parabéns pelo artigo!
[2] Comentário enviado por brunolimaq em 16/10/2007 - 09:14h
Boa dica...
Mas vale lembrar que a recompilação do Apache, PHP e qualquer outro programa instalado apartir de um SOURCE é possivel sem o "checkinstall". Podemos usar o "Make Clean" antes de recompilar, bastando manter o mesmo diretório de instalação da compilação anterior, que pode ser obtida olhando a LOG do "Configure".
[3] Comentário enviado por ls_junior em 17/10/2007 - 07:07h
Lembrando que existe o módulo mod_proxy_ajp que é bem mais simples de configurar que o mod_jk.
Segue exemplo de configuração do mod_proxy_ajp para o manager do tomcat:
<Location /manager>
ProxyPass ajp://nome_do_host_tomcat:8009/manager/
Order allow,deny
allow from all
</Location>
Sim, é apenas isso. Além de carregar o módulo(proxy_ajp.load do Debian):
# Depends: proxy
LoadModule proxy_ajp_module /usr/lib/apache2/modules/mod_proxy_ajp.so
[4] Comentário enviado por andrade.ti em 17/10/2007 - 11:31h
Muito bom artigo. Eu estava pensando em escrever um sobre o mod_jk que a princípio é mais complicado do que o mod_proxy_ajp, mas é mais versátil, por não ser um simples redirecionamento mas sim uma integração verdadeira.
[5] Comentário enviado por brgsousa em 18/10/2007 - 10:29h
Muito bom seu tutorial,
Tava sentindo falta de um tutorial atualizado.
Queria atentar para as descrições de criação de links que estao erradas. O certo seria (Estou no Debian):
ln -s <origem> <destino>
Exemplo: ln -s apache-tomcat-6.0.14 apache-tomcat
[7] Comentário enviado por removido em 04/04/2008 - 14:50h
Ola quando tento utilizar o mod_jk.so com o comando ./configure --with-apxs=/usr/local/apache2/bin/apxs ele diz que o arquivo apxs nao existe tentei com o comando --with-apache=/usr/local/apache-tomcat-5-5.1.7. e deu que não era um diretorio válido do fonte do apache . Será que tem solução??
[8] Comentário enviado por hugoeustaquio em 04/04/2008 - 14:53h
Seguinte, alexmoreira:
Digite o comando "whereis apxs" e veja se ele aponta um caminho. Em caso positivo, utilize esse caminho no lugar de "/usr/local/apache2/bin/apxs". Em caso negativo verifique a instalação do apache. Pode ser que sua distribuição tenha colocado o "apxs" em outro pacote. Se isso acontecer, você terá que descobrir qual pacote é esse, fazendo uma busca no programa que gerencia os pacotes da sua distribuição.
[9] Comentário enviado por hugoeustaquio em 04/04/2008 - 14:57h
A propósito alexmoreira, você já tinha o apache (servidor web) instalado ou você procedeu a instalação através do código fonte? Se foi a partir do código fonte, verifique se a compilação procedeu corretamente.
[10] Comentário enviado por removido em 07/04/2008 - 11:41h
sim o apache está instalado no diretorio /etc/apache2 é o apache 2.2. como faço uma busca para descobrir mesmo se o apxs está instalado na minha máquina. Agradeço desde já.
[17] Comentário enviado por juniomundo em 16/05/2009 - 11:59h
Realizei a instalção do LAMP através do nautilus, gostaria de saber se tem esta possibilidade de integração.Porque quando eu dou o comando: gedit httpd.conf, consigo visualizar um arquivo em branco.